﻿namespace RuoVea.OmiApi.Upload.Service.Dto;

/// <summary>
/// 上传结果类
/// 包含文件上传后的详细信息
/// </summary>
public class UploadResult
{
    /// <summary>
    /// 原始文件名
    /// </summary>
    public string FileName { get; set; } = string.Empty;

    /// <summary>
    /// 存储的文件名（可能经过重命名）
    /// </summary>
    public string StoredFileName { get; set; } = string.Empty;

    /// <summary>
    /// 文件大小（字节）
    /// </summary>
    public long FileSize { get; set; }

    /// <summary>
    /// 文件的完整存储路径（相对路径）
    /// </summary>
    public string FilePath { get; set; } = string.Empty;

    /// <summary>
    /// 文件的内容类型（MIME类型）
    /// </summary>
    public string ContentType { get; set; } = string.Empty;

    /// <summary>
    /// 文件预览URL（如果支持预览）
    /// </summary>
    public string PreviewUrl { get; set; } = string.Empty;

    /// <summary>
    /// 文件上传时间
    /// </summary>
    public DateTime UploadTime { get; set; }

    /// <summary>
    /// 文件分类（根据FileTypePathMapping确定）
    /// </summary>
    public string Category { get; set; } = string.Empty;

    /// <summary>
    /// 上传路由标识
    /// </summary>
    public string UploadRoute { get; set; } = string.Empty;
}